package com.zjuee.base.model.common.ledger;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zjuee.base.model.Description;
import lombok.*;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 产生台账汇总表
 *
 * @author wu liang
 * @since 1.0
 */
@Data
@TableName("wk_ledger_produce_gather")
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class LedgerProduceGather extends Description {

	// 企业ID
	private Long bciId;
	// 计划ID
	private Long wpiId;
	// 废物大类别  1：危废  2：固废
	private String wlpgModel;
	// 废物大类别  11：危废  21：固废 Str
	@TableField(exist = false)
	private String wlpModelStr;
	// 废物小类别  11：危废  12：医废  21：固废 22：大宗固废
	private String wlpgType;
	// 废物大类
	private String wlpgBcode;
	@TableField(exist = false)
	// 废物大类 Str
	private String wlpgBcodeStr;
	// 废物小类
	private String wlpgScode;
	// 废物名称(计划中手动输入名称)
	private String wlpgName;
	// 年份
	private String wlpgYear;
	// 产生量总计(吨)
	private BigDecimal wlpgTotalProduce;
	// 线下产生量(吨)
	private BigDecimal wlpgUnderProduce;
	// 上年底库存量(吨)
	private BigDecimal wlpgPreStock;
	// 线下委托处置量(吨)
	private BigDecimal wlpgUnderDispose;
	// 自行处置量总计(吨)
	private BigDecimal wlpgTotalDispose;
	// 委托处置量总计(吨)
	private BigDecimal wlpgTotalTrustDispose;
	// 当前库存量(吨)
	private BigDecimal wlpgStock;
	// 库存变动量(吨)
	private BigDecimal wlpgChange;
	// 创建人
	private String wlpgCreator;
	// 创建时间
	@JsonFormat(pattern = "yyyy-MM-dd" ,timezone = "GMT+8")
	private Date wlpgCreateTime;
	// 修改人
	private String wlpgModifier;
	// 修改时间
	@JsonFormat(pattern = "yyyy-MM-dd" ,timezone = "GMT+8")
	private Date wlpgModifiedTime;
	// 是否可以删除
	private String wlpgCanDelete;
	// 是否可以修改
	private String wlpgCanEdit;
	@TableField(exist = false)
	// 是否可以修改str 虚拟字段
	private String wlpgCanEditStr;
	@TableField(exist = false)
	// 企业名称 虚拟字段;
	private String bciName;
	@TableField(exist = false)
	// 企业类别 虚拟字段
	private String bciTag;

	@TableField(exist = false)
	// 联系人 虚拟字段;
	private String bciLegalDelegate;
	@TableField(exist = false)
	// 联系人电话 虚拟字段;
	private String bciLegalDelegatePhone;
	@TableField(exist = false)
	// 废物类别 虚拟字段
	private String wlpgTypeStr;
	@TableField(exist = false)
	// 废物小类 虚拟字段
	private String wlpgScodeStr;
	@TableField(exist = false)
	// 总库存 虚拟字段 （导出）
	private BigDecimal wlpgTotleStock;
	@TableField(exist = false)
	// 统计分类字段
	private String queryField;
	@TableField(exist = false)
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
	// 查询开始时间
	private String startTime;
	@TableField(exist = false)
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
	// 查询结束时间
	private String endTime;
	@TableField(exist = false)
	// 虚拟字段 处置总量 自行处置+委托处置
	private BigDecimal lpbTotalDispose;
	/**所属市*/
	@TableField(exist = false)
	private String city;
	/**所属区*/
	@TableField(exist = false)
	private String area;
	/**所属街道*/
	@TableField(exist = false)
	private String street;


}
